put numberRight & return after cd fld "Individual" of card "scoreCard"
put 0 into cd fld counter
if cd fld quizCounter <> quizTotal then
answer "Do you wish to continue?" with "No" or "Yes"
if it is "Yes" then
showButtons
put 1 + cd fld quizCounter into cd fld quizCounter
if randomPick = "Yes" then
randomChoose
click at the loc of btn "Test"
end if
else
endQuiz
end if
else
endQuiz
end if
end if
end enterInField
on endQuiz
global quizTotal
put 0 into cd fld quizCounter
answer "You have finished " & quizTotal*10 & " problems!" with "OK" or "Scores"
put 0 into quizTotal
if it is "Scores" then click at the loc of btn "Scores"
end endQuiz
-- part 4 (button)
-- low flags: 00
-- high flags: 8003
-- rect: left=29 top=28 right=50 bottom=129
-- title width / last selected line: 0
-- icon id / first selected line: 0 / 0
-- text alignment: 1
-- font id: 0
-- text size: 12
-- style flags: 0
-- line height: 16
-- part name: Test
----- HyperTalk script -----
on mouseUp
global numberRight
if cd fld quizCounter = 0 then put 1 into cd fld quizCounter
repeat with x = 3 to 22
put empty into cd fld x
end repeat
if cd fld counter < 2 then
put 1 into cd fld counter
put 0 into numberRight
repeat with x = 2 to 10
if the hilite of btn x is false then hide btn x
end repeat
end if
set the numberFormat to "#.#"
if the hilite of btn "Whole Num" is true then wholeNum
if the hilite of btn "Fractions" is true then Fraction
if the hilite of btn "Decimals" is true then Decimal
unlock screen
if the hilite of btn "Fractions" is false then
click at the loc of cd fld guess
else
click at the loc of cd fld FracWhole
end if
end mouseUp
on wholeNum
show cd fld fracCover
hide cd fld cover
if the hilite of btn "Addition" is true then
put "+" into cd fld sign
put the random of 1000 into cd fld firstNum
put the random of 1000 into cd fld secondNum
put cd fld firstNum + cd fld secondNum into cd fld Answer
end if
if the hilite of btn "Subtraction" is true then
put "—" into cd fld sign
put 10 + the random of 1000 into cd fld firstNum
repeat forever
put the random of 1000 into cd fld secondNum
if cd fld secondNum <= cd fld firstNum then exit repeat
end repeat
put cd fld firstNum - cd fld secondNum into cd fld Answer
end if
if the hilite of btn "Multiplying" is true then
put "X" into cd fld sign
put the random of 100 into cd fld firstNum
put the random of 100 into cd fld secondNum
put cd fld firstNum * cd fld secondNum into cd fld Answer
end if
if the hilite of btn "Division" is true then
put "/" into cd fld sign
put the random of 1000 into cd fld firstNum
put the random of 1000 into cd fld secondNum
set the numberFormat to "#.##"
put cd fld firstNum/cd fld secondNum into cd fld Answer
end if
end wholeNum
on Fraction
show cd fld cover
hide cd fld fracCover
lock screen
if the hilite of btn "Mixed" is true then
put the random of 10 into cd fld FracWhole1
put the random of 9 into cd fld FracWhole2
end if
if the hilite of btn "Addition" is true then
put "+" into cd fld divSign
put the random of 9 into cd fld Numer1
repeat forever
put the random of 10 into cd fld Denom1
if cd fld Denom1 > cd fld Numer1 then exit repeat
end repeat
put the random of 9 into cd fld Numer2
repeat forever
put the random of 10 into cd fld Denom2
if cd fld Denom2 > cd fld Numer2 then exit repeat
end repeat
if the hilite of btn "Mixed" is true then MixedFraction
else
put cd fld Numer1*cd fld Denom2+cd fld Numer2* cd fld Denom1 into cd fld "AnswerNum"
end if
put cd fld Denom1*cd fld Denom2 into cd fld "AnswerDenom"
end if
if the hilite of btn "Subtraction" is true then
put "—" into cd fld divSign
if the hilite of btn "Mixed" is true then
repeat forever
if cd fld FracWhole2 < cd fld FracWhole1 then exit repeat
put the random of 10 into cd fld FracWhole1
put the random of 9 into cd fld FracWhole2
end repeat
end if
put the random of 9 into cd fld Numer1
repeat forever
put the random of 10 into cd fld Denom1
if cd fld Denom1 > cd fld Numer1 then exit repeat
end repeat
repeat forever --make sure second fraction is smaller
put the random of 9 into cd fld Numer2
repeat forever
put the random of 10 into cd fld Denom2
if cd fld Denom2 > cd fld Numer2 then exit repeat
end repeat
if the hilite of btn "Mixed" is false then
if cd fld Numer2/cd fld Denom2 < cd fld Numer1/cd fld Denom1 then
exit repeat
end if
else exit repeat
end repeat
if the hilite of btn "Mixed" is true then MixedFraction
else
put cd fld Numer1*cd fld Denom2-cd fld Numer2* cd fld Denom1 into cd fld "AnswerNum"
end if
put cd fld Denom1*cd fld Denom2 into cd fld "AnswerDenom"
end if
if the hilite of btn "Multiplying" is true then
put "X" into cd fld divSign
put the random of 9 into cd fld Numer1
repeat forever
put the random of 10 into cd fld Denom1
if cd fld Denom1 > cd fld Numer1 then exit repeat
end repeat
put the random of 9 into cd fld Numer2
repeat forever
put the random of 10 into cd fld Denom2
if cd fld Denom2 > cd fld Numer2 then exit repeat
end repeat
if the hilite of btn "Mixed" is true then MixedFraction
else
put cd fld Numer1*cd fld Numer2 into cd fld "AnswerNum"
end if
put cd fld Denom1 * cd fld Denom2 into cd fld AnswerDenom
end if
if the hilite of btn "Division" is true then
put "/" into cd fld divSign
put the random of 9 into cd fld Numer1
repeat forever
put the random of 10 into cd fld Denom1
if cd fld Denom1 > cd fld Numer1 then exit repeat
end repeat
put the random of 9 into cd fld Numer2
repeat forever
put the random of 10 into cd fld Denom2
if cd fld Denom2 > cd fld Numer2 then exit repeat
end repeat
if the hilite of btn "Mixed" is true then MixedFraction
else
put cd fld Numer1 * cd fld Denom2 into cd fld AnswerNum
put cd fld Denom1 * cd fld Numer2 into cd fld AnswerDenom
end if
end if
reduceProb
reduce
end Fraction
on Decimal
show cd fld fracCover
hide cd fld cover
set the numberFormat to "#.##"
if the hilite of btn "Addition" is true then
put "+" into cd fld sign
put the random of 99 & "." & the random of 99 into cd fld firstNum
put the random of 99 & "." & the random of 99 into cd fld secondNum
put cd fld firstNum + cd fld secondNum into cd fld Answer
end if
if the hilite of btn "Subtraction" is true then
put "—" into cd fld sign
put 10+the random of 99 & "." & the random of 99 into cd fld firstNum
repeat forever
put the random of 99 & "." & the random of 99 into cd fld secondNum
if cd fld secondNum <= cd fld firstNum then exit repeat
end repeat
put cd fld firstNum - cd fld secondNum into cd fld Answer
end if
if the hilite of btn "Multiplying" is true then
put "X" into cd fld sign
put the random of 99 & "." & the random of 99 into cd fld firstNum
put the random of 99 & "." & the random of 99 into cd fld secondNum
put cd fld firstNum * cd fld secondNum into cd fld Answer
end if
if the hilite of btn "Division" is true then
put "/" into cd fld sign
put the random of 99 & "." & the random of 99 into cd fld firstNum
put the random of 99 & "." & the random of 99 into cd fld secondNum
put cd fld firstNum/cd fld secondNum into cd fld Answer
end if
end Decimal
on MixedFraction
put cd fld FracWhole1*cd fld Denom1+cd fld Numer1 into FirstNumer
put cd fld FracWhole2*cd fld Denom2+cd fld Numer2 into SecondNumer
if the hilite of btn "Addition" is true then
put FirstNumer*cd fld Denom2+SecondNumer* cd fld Denom1 into cd fld "AnswerNum"
end if
if the hilite of btn "Subtraction" is true then
put FirstNumer*cd fld Denom2-SecondNumer* cd fld Denom1 into cd fld "AnswerNum"
end if
if the hilite of btn "Multiplying" is true then
put FirstNumer*SecondNumer into cd fld "AnswerNum"
end if
if the hilite of btn "Division" is true then
put FirstNumer*cd fld Denom2 into cd fld "AnswerNum"
put cd fld Denom1*SecondNumer into cd fld "AnswerDenom"
end if
end MixedFraction
on reduce
if cd fld "AnswerNum" > cd fld "AnswerDenom" then
-- If the numerator is larger than the denominator
put cd fld "AnswerNum" div cd fld "AnswerDenom" into cd fld "MixFrac"
put cd fld "AnswerNum" mod cd fld "AnswerDenom" into cd fld "AnswerNum"
end if
repeat with x = min(cd fld "AnswerNum",cd fld "AnswerDenom") down to 2
if cd fld "AnswerNum" mod x = 0 and cd fld "AnswerDenom" mod x = 0 then
-- If both numbers divide evenly by the same number
put cd fld "AnswerNum"/x into cd fld "AnswerNum"
put cd fld "AnswerDenom"/x into cd fld "AnswerDenom"
end if
end repeat
if cd fld "AnswerDenom" = 1 then
add 1 to cd fld "MixFrac"
put empty into cd fld "AnswerNum"
put empty into cd fld "AnswerDenom"
end if
if cd fld "AnswerNum" = 0 then
put empty into cd fld "AnswerNum"
put empty into cd fld "AnswerDenom"
end if
end reduce
on reduceProb
repeat with x = min(cd fld "Numer1",cd fld "Denom1") down to 2
if cd fld "Numer1" mod x = 0 and cd fld "Denom1" mod x = 0 then
-- If both numbers divide evenly by the same number
put cd fld "Numer1"/x into cd fld "Numer1"
put cd fld "Denom1"/x into cd fld "Denom1"
end if
end repeat
if cd fld "Numer1" = 0 then
put empty into cd fld "Numer1"
put empty into cd fld "Denom1"
end if
repeat with x = min(cd fld "Numer2",cd fld "Denom2") down to 2
if cd fld "Numer2" mod x = 0 and cd fld "Denom2" mod x = 0 then
-- If both numbers divide evenly by the same number
put cd fld "Numer2"/x into cd fld "Numer2"
put cd fld "Denom2"/x into cd fld "Denom2"
end if
end repeat
if cd fld "Numer2" = 0 then
put empty into cd fld "Numer2"
put empty into cd fld "Denom2"
end if
end reduceProb
-- part 5 (field)
-- low flags: 80
-- high flags: 0002
-- rect: left=278 top=134 right=153 bottom=324
-- title width / last selected line: 0
-- icon id / first selected line: 0 / 0
-- text alignment: 65535
-- font id: 3
-- text size: 12
-- style flags: 256
-- line height: 16
-- part name: AnswerNum
-- part 17 (button)
-- low flags: 00
-- high flags: 8006
-- rect: left=401 top=48 right=70 bottom=501
-- title width / last selected line: 0
-- icon id / first selected line: 0 / 0
-- text alignment: 1
-- font id: 0
-- text size: 12
-- style flags: 0
-- line height: 16
-- part name: Addition
----- HyperTalk script -----
on mouseUp
set the hilite of me to true
set the hilite of btn "Subtraction" to false
set the hilite of btn "Multiplying" to false
set the hilite of btn "Division" to false
end mouseUp
-- part 18 (button)
-- low flags: 00
-- high flags: 8006
-- rect: left=401 top=69 right=91 bottom=501
-- title width / last selected line: 0
-- icon id / first selected line: 0 / 0
-- text alignment: 1
-- font id: 0
-- text size: 12
-- style flags: 0
-- line height: 16
-- part name: Subtraction
----- HyperTalk script -----
on mouseUp
set the hilite of me to true
set the hilite of btn "Addition" to false
set the hilite of btn "Multiplying" to false
set the hilite of btn "Division" to false
end mouseUp
-- part 19 (button)
-- low flags: 00
-- high flags: C006
-- rect: left=401 top=90 right=112 bottom=501
-- title width / last selected line: 0
-- icon id / first selected line: 0 / 0
-- text alignment: 1
-- font id: 0
-- text size: 12
-- style flags: 0
-- line height: 16
-- part name: Multiplying
----- HyperTalk script -----
on mouseUp
set the hilite of me to true
set the hilite of btn "Addition" to false
set the hilite of btn "Subtraction" to false
set the hilite of btn "Division" to false
end mouseUp
-- part 20 (button)
-- low flags: 00
-- high flags: 8006
-- rect: left=401 top=111 right=133 bottom=501
-- title width / last selected line: 0
-- icon id / first selected line: 0 / 0
-- text alignment: 1
-- font id: 0
-- text size: 12
-- style flags: 0
-- line height: 16
-- part name: Division
----- HyperTalk script -----
on mouseUp
set the hilite of me to true
set the hilite of btn "Addition" to false
set the hilite of btn "Subtraction" to false
set the hilite of btn "Multiplying" to false
end mouseUp
-- part 21 (button)
-- low flags: 00
-- high flags: C006
-- rect: left=401 top=167 right=189 bottom=501
-- title width / last selected line: 0
-- icon id / first selected line: 0 / 0
-- text alignment: 1
-- font id: 0
-- text size: 12
-- style flags: 0
-- line height: 16
-- part name: Whole Num
----- HyperTalk script -----
on mouseUp
set the hilite of me to true
set the hilite of btn "Fractions" to false
set the hilite of btn "Decimals" to false
end mouseUp
-- part 22 (button)
-- low flags: 00
-- high flags: 8006
-- rect: left=401 top=194 right=216 bottom=501
-- title width / last selected line: 0
-- icon id / first selected line: 0 / 0
-- text alignment: 1
-- font id: 0
-- text size: 12
-- style flags: 0
-- line height: 16
-- part name: Fractions
----- HyperTalk script -----
on mouseUp
set the hilite of me to true
set the hilite of btn "Whole Num" to false
set the hilite of btn "Decimals" to false
end mouseUp
-- part 23 (button)
-- low flags: 00
-- high flags: 8006
-- rect: left=401 top=266 right=288 bottom=501
-- title width / last selected line: 0
-- icon id / first selected line: 0 / 0
-- text alignment: 1
-- font id: 0
-- text size: 12
-- style flags: 0
-- line height: 16
-- part name: Decimals
----- HyperTalk script -----
on mouseUp
set the hilite of me to true
set the hilite of btn "Whole Num" to false
set the hilite of btn "Fractions" to false
end mouseUp
-- part 24 (field)
-- low flags: 01
-- high flags: 0000
-- rect: left=98 top=77 right=96 bottom=116
-- title width / last selected line: 0
-- icon id / first selected line: 0 / 0
-- text alignment: 0
-- font id: 3
-- text size: 12
-- style flags: 256
-- line height: 16
-- part name: sign
-- part 27 (field)
-- low flags: 80
-- high flags: 0002
-- rect: left=278 top=154 right=173 bottom=324
-- title width / last selected line: 0
-- icon id / first selected line: 0 / 0
-- text alignment: 65535
-- font id: 3
-- text size: 12
-- style flags: 256
-- line height: 16
-- part name: AnswerDenom
-- part 28 (field)
-- low flags: 80
-- high flags: 0002
-- rect: left=231 top=142 right=161 bottom=277
-- title width / last selected line: 0
-- icon id / first selected line: 0 / 0
-- text alignment: 65535
-- font id: 3
-- text size: 12
-- style flags: 256
-- line height: 16
-- part name: MixFrac
-- part 30 (field)
-- low flags: 00
-- high flags: 0000
-- rect: left=30 top=217 right=237 bottom=60
-- title width / last selected line: 0
-- icon id / first selected line: 0 / 0
-- text alignment: 65535
-- font id: 3
-- text size: 12
-- style flags: 256
-- line height: 16
-- part name: FracWhole1
-- part 31 (field)
-- low flags: 01
-- high flags: 0000
-- rect: left=60 top=207 right=226 bottom=93
-- title width / last selected line: 0
-- icon id / first selected line: 0 / 0
-- text alignment: 1
-- font id: 3
-- text size: 12
-- style flags: 256
-- line height: 16
-- part name: Numer1
-- part 32 (field)
-- low flags: 01
-- high flags: 0000
-- rect: left=60 top=228 right=247 bottom=93
-- title width / last selected line: 0
-- icon id / first selected line: 0 / 0
-- text alignment: 1
-- font id: 3
-- text size: 12
-- style flags: 256
-- line height: 16
-- part name: Denom1
-- part 33 (field)
-- low flags: 00
-- high flags: 0000
-- rect: left=125 top=217 right=237 bottom=155
-- title width / last selected line: 0
-- icon id / first selected line: 0 / 0
-- text alignment: 65535
-- font id: 3
-- text size: 12
-- style flags: 256
-- line height: 16
-- part name: FracWhole2
-- part 34 (field)
-- low flags: 01
-- high flags: 0000
-- rect: left=156 top=207 right=226 bottom=191
-- title width / last selected line: 0
-- icon id / first selected line: 0 / 0
-- text alignment: 1
-- font id: 3
-- text size: 12
-- style flags: 256
-- line height: 16
-- part name: Numer2
-- part 35 (field)
-- low flags: 01
-- high flags: 0000
-- rect: left=156 top=228 right=246 bottom=191
-- title width / last selected line: 0
-- icon id / first selected line: 0 / 0
-- text alignment: 1
-- font id: 3
-- text size: 12
-- style flags: 256
-- line height: 16
-- part name: Denom2
-- part 36 (field)
-- low flags: 00
-- high flags: 0000
-- rect: left=228 top=217 right=237 bottom=258
-- title width / last selected line: 0
-- icon id / first selected line: 0 / 0
-- text alignment: 65535
-- font id: 3
-- text size: 12
-- style flags: 256
-- line height: 16
-- part name: FracWhole
----- HyperTalk script -----
on enterInField
click at the loc of cd fld "NumerAns"
end enterInField
-- part 37 (field)
-- low flags: 00
-- high flags: 0000
-- rect: left=259 top=207 right=226 bottom=294
-- title width / last selected line: 0
-- icon id / first selected line: 0 / 0
-- text alignment: 1
-- font id: 3
-- text size: 12
-- style flags: 256
-- line height: 16
-- part name: NumerAns
----- HyperTalk script -----
on enterInField
click at the loc of cd fld "DenomAns"
end enterInField
-- part 38 (field)
-- low flags: 00
-- high flags: 0000
-- rect: left=260 top=228 right=247 bottom=294
-- title width / last selected line: 0
-- icon id / first selected line: 0 / 0
-- text alignment: 1
-- font id: 3
-- text size: 12
-- style flags: 256
-- line height: 16
-- part name: DenomAns
----- HyperTalk script -----
on enterInField
global numberRight, quizTotal
if cd fld NumerAns <> cd fld AnswerNum or cd fld DenomAns <> cd fld AnswerDenom or cd fld FracWhole <> cd fld MixFrac then
answer "The correct answer is " & cd fld "MixFrac" & " " & cd fld "AnswerNum" & "/" & cd fld "AnswerDenom"
else
answer "You are correct!"
add 1 to numberRight
end if
if cd fld counter <> 10 then
put 1 + cd fld counter into cd fld counter
click at the loc of btn "Test"
else
answer "This quiz is over!"
put numberRight & return after cd fld "Individual" of card "scoreCard"
put 0 into cd fld counter
if cd fld quizCounter <> quizTotal then
answer "Do you wish to continue?" with "No" or "Yes"
if it is "Yes" then
put 1 + cd fld quizCounter into cd fld quizCounter
click at the loc of btn "Test"
end if
else
put 0 into cd fld quizCounter
answer "You have finished " & quizTotal*10 & " problems!" with "OK" or "Scores"
put 0 into quizTotal
if it is "Scores" then click at the loc of btn "Scores"
end if
end if
end enterInField
-- part 40 (field)
-- low flags: 01
-- high flags: 0000
-- rect: left=100 top=217 right=236 bottom=118
-- title width / last selected line: 0
-- icon id / first selected line: 0 / 0
-- text alignment: 0
-- font id: 3
-- text size: 12
-- style flags: 256
-- line height: 16
-- part name: divSign
-- part 41 (field)
-- low flags: 81
-- high flags: 0002
-- rect: left=185 top=102 right=121 bottom=278
-- title width / last selected line: 0
-- icon id / first selected line: 0 / 0
-- text alignment: 0
-- font id: 3
-- text size: 12
-- style flags: 256
-- line height: 16
-- part name: Answer
----- HyperTalk script -----
on closeField
global numberRight
if the hilite of btn "Fractions" is false then
if cd fld guess <> cd fld Answer then
answer "The correct answer is " & cd fld "Answer"
else
answer "You are correct!"
add 1 to numberRight
end if
else
click at the loc of cd fld "Quotient"
exit closeField
end if
put empty into cd fld "guess"
if cd fld counter <> 10 then
put 1 + cd fld counter into cd fld counter
click at the loc of btn "Test"
else
answer "That's all folks!"
put 0 into cd fld counter
put "Your total correct was " & numberRight & ", for an accuracy of " & numberRight*10 & "%."
end if
end closeField
-- part 42 (button)
-- low flags: 00
-- high flags: 8006
-- rect: left=426 top=215 right=238 bottom=501
-- title width / last selected line: 0
-- icon id / first selected line: 0 / 0
-- text alignment: 1
-- font id: 0
-- text size: 12
-- style flags: 0
-- line height: 16
-- part name: Regular
----- HyperTalk script -----
on mouseUp
set the hilite of me to true
set the hilite of btn "Mixed" to false
end mouseUp
-- part 43 (button)
-- low flags: 00
-- high flags: 8006
-- rect: left=426 top=238 right=260 bottom=501
-- title width / last selected line: 0
-- icon id / first selected line: 0 / 0
-- text alignment: 1
-- font id: 0
-- text size: 12
-- style flags: 0
-- line height: 16
-- part name: Mixed
----- HyperTalk script -----
on mouseUp
set the hilite of me to true
set the hilite of btn "Regular" to false
end mouseUp
-- part 44 (button)
-- low flags: 00
-- high flags: 0000
-- rect: left=464 top=291 right=324 bottom=501
-- title width / last selected line: 0
-- icon id / first selected line: 20098 / 20098
-- text alignment: 1
-- font id: 0
-- text size: 12
-- style flags: 0
-- line height: 16
-- part name: New Button
----- HyperTalk script -----
on mouseUp
go Home
end mouseUp
-- part 45 (button)
-- low flags: 00
-- high flags: 8003
-- rect: left=31 top=301 right=323 bottom=131
-- title width / last selected line: 0
-- icon id / first selected line: 0 / 0
-- text alignment: 1
-- font id: 0
-- text size: 12
-- style flags: 0
-- line height: 16
-- part name: Scores
----- HyperTalk script -----
on mouseUp
if visible of cd fld "About" is true then
set scroll of cd fld "About" to 1772
else
visual wipe left
go card "scoreCard"
end if
end mouseUp
-- part 48 (button)
-- low flags: 00
-- high flags: 8003
-- rect: left=166 top=301 right=323 bottom=266
-- title width / last selected line: 0
-- icon id / first selected line: 0 / 0
-- text alignment: 1
-- font id: 0
-- text size: 12
-- style flags: 0
-- line height: 16
-- part name: Reset
----- HyperTalk script -----
on mouseUp
answer "Reset all scores and counters?" with "Yes" or "No"
if it is "Yes" then
lock screen
go card "scoreCard"
put empty into cd fld "Individual"
go card "testCard"
repeat with x = 1 to 22
put empty into cd fld x
end repeat
put 0 into cd fld "counter"
put 0 into cd fld "quizCounter"
show btn "Begin Quiz"
end if
end mouseUp
-- part 49 (button)
-- low flags: 00
-- high flags: 8003
-- rect: left=29 top=28 right=50 bottom=129
-- title width / last selected line: 0
-- icon id / first selected line: 0 / 0
-- text alignment: 1
-- font id: 0
-- text size: 12
-- style flags: 0
-- line height: 16
-- part name: Begin Quiz
----- HyperTalk script -----
on mouseUp
global quizTotal, randomPick
showButtons
repeat forever
ask "How many quizzes? (1-20)"
if it < 21 and it > 0 then exit repeat
else if it is empty then exit mouseUp
end repeat
put it into quizTotal
put "No" into randomPick
answer "Pick method of problem selection…" with "Manual" or "Random"
if it is "Random" then
randomChoose
put "Yes" into randomPick
end if
hide btn "Begin Quiz"
end mouseUp
-- part 50 (field)
-- low flags: 00
-- high flags: 0001
-- rect: left=176 top=77 right=98 bottom=200
-- title width / last selected line: 0
-- icon id / first selected line: 0 / 0
-- text alignment: 0
-- font id: 3
-- text size: 12
-- style flags: 0
-- line height: 16
-- part name: cover
-- part 51 (field)
-- low flags: 00
-- high flags: 0001
-- rect: left=52 top=216 right=237 bottom=298
-- title width / last selected line: 0
-- icon id / first selected line: 0 / 0
-- text alignment: 0
-- font id: 3
-- text size: 12
-- style flags: 0
-- line height: 16
-- part name: fracCover
-- part 52 (button)
-- low flags: 00
-- high flags: 8003
-- rect: left=410 top=300 right=322 bottom=453
-- title width / last selected line: 0
-- icon id / first selected line: 0 / 0
-- text alignment: 1
-- font id: 0
-- text size: 12
-- style flags: 0
-- line height: 16
-- part name: Info
----- HyperTalk script -----
on mouseUp
set the scroll of cd fld "About" to 0
lock screen
show btn "Operation"
show btn "Misc"
show btn "General"
show btn "Print Help"
show cd fld "About"
end mouseUp
-- part 53 (field)
-- low flags: 81
-- high flags: 0007
-- rect: left=29 top=54 right=297 bottom=397
-- title width / last selected line: 0
-- icon id / first selected line: 0 / 0
-- text alignment: 0
-- font id: 3
-- text size: 12
-- style flags: 0
-- line height: 16
-- part name: About
----- HyperTalk script -----
on mouseUp
lock screen
hide btn "Misc"
hide btn "Operation"
hide btn "General"
hide btn "Print Help"
hide me
end mouseUp
-- part 54 (button)
-- low flags: 80
-- high flags: 8003
-- rect: left=166 top=301 right=323 bottom=266
-- title width / last selected line: 0
-- icon id / first selected line: 0 / 0
-- text alignment: 1
-- font id: 0
-- text size: 12
-- style flags: 0
-- line height: 16
-- part name: Operation
----- HyperTalk script -----
on mouseUp
set scroll of cd fld "About" to 940
end mouseUp
-- part 55 (button)
-- low flags: 80
-- high flags: 8003
-- rect: left=29 top=28 right=50 bottom=129
-- title width / last selected line: 0
-- icon id / first selected line: 0 / 0
-- text alignment: 1
-- font id: 0
-- text size: 12
-- style flags: 0
-- line height: 16
-- part name: Misc
----- HyperTalk script -----
on mouseUp
set scroll of cd fld "About" to 2105
end mouseUp
-- part 57 (button)
-- low flags: 00
-- high flags: 8003
-- rect: left=296 top=300 right=322 bottom=396
-- title width / last selected line: 0
-- icon id / first selected line: 0 / 0
-- text alignment: 1
-- font id: 0
-- text size: 12
-- style flags: 0
-- line height: 16
-- part name: End Quiz
----- HyperTalk script -----
on mouseUp
answer "End this quiz? (Score will not count)" with "Yes" or "No"
if it is "Yes" then
lock screen
repeat with x = 1 to 22
put empty into cd fld x
end repeat
put 0 into cd fld "counter"
put 0 into cd fld "quizCounter"
show cd fld cover
show cd fld fracCover
show btn "Begin Quiz"
showButtons
end if
end mouseUp
-- part 56 (button)
-- low flags: 80
-- high flags: 8003
-- rect: left=296 top=300 right=322 bottom=396
-- title width / last selected line: 0
-- icon id / first selected line: 0 / 0
-- text alignment: 1
-- font id: 0
-- text size: 12
-- style flags: 0
-- line height: 16
-- part name: General
----- HyperTalk script -----
on mouseUp
set scroll of cd fld "About" to 0
end mouseUp
-- part 58 (button)
-- low flags: 80
-- high flags: 8003
-- rect: left=401 top=134 right=166 bottom=501
-- title width / last selected line: 0
-- icon id / first selected line: 0 / 0
-- text alignment: 1
-- font id: 0
-- text size: 12
-- style flags: 0
-- line height: 16
-- part name: Print Help
----- HyperTalk script -----
on mouseUp
lock screen
go card "scoreCard"
put cd fld "Individual" into indiv
put cd fld "Correct" into corr
put cd fld "Percent" into pct
put cd fld "Grade" into grad
repeat with x = 1 to 4
put empty into cd fld x
end repeat
doMenu "Print Report..."
put indiv into cd fld "Individual"
put corr into cd fld "Correct"
put pct into cd fld "Percent"
put grad into cd fld "Grade"
go card "testCard"
end mouseUp
-- part contents for card part 53
----- text -----
GENERAL
Use the buttons to quickly navigate. Click anywhere in this field to exit help. You may print this field by using "Print Help" (be sure CARD FIELDS is checked) and just click OK.
***** MATH TUTOR *****
This program is designed for those who need practice in the basic principles of math. It covers the four main operations: Addition, Subtraction, Multiplication, and Division. It works with three types of numbers: Whole numbers, Fractions - both regular and mixed (5 1/2), and Decimals. It randomly selects problems based on the buttons chosen at right. You can even have the computer choose the buttons randomly for you. The number ranges used are as follows:
Number Type Range
Whole Number
Multiplication 1 - 100
All others 1 - 1000
Fractions
All types 1 - 10
Decimals
All types 1 - 100
It may seem small for Fractions to be 1 - 10, but this just limits the fractions to tenths, and is quite sufficient to learn the principles involved.
When using Decimals, the answers are resolved to an accuracy of two places to the right of the decimal. You must enter all significant digits to get the answer correct. For example, if the answer resolves to 29.30 then you need only 29.3, but if the answer resolves to 15.49 then you must enter 15.49 to be correct. 15.5 would be incorrect. When using Division on the Whole Numbers, this two place accuracy also applies.
When Subtraction is chosen, you may notice the computer occasionally taking a bit longer to choose the second number. This is because it is set up to make sure the second number is smaller than the first. This avoids getting a negative answer. Such answers are not real numbers and are beyond the purpose of this program.
Please be aware that the speed of this program is dependent on the machine used. On a Mac II or SE/30 the problems and operations will occur quickly. On a Mac Plus or SE, there may be a small delay in some generation of problems, especially Fractions. The program is bug-free to the extent that I've tested it. So if you're using a slower machine and things don't seem to be happening, don't start clicking buttons because all those clicks will take effect when then computer catches up. If you really think things are stuck, hold down the Command key and period which will cancel a script in progress.
OPERATION
A set consists of up to twenty quizzes. To begin a set of quizzes, click on "Begin Quiz". This will prompt you to choose the number of quizzes you want in this set. You may choose any number up to 20. A quiz consists of 10 questions. Next, you will be asked if you want to choose your type of problem manually or have the computer randomly choose for you. This choice will remain in effect during the entire set of quizzes unless you choose to reset the scores.
To start the quiz, click on the "Test" button and the computer will generate a problem based on the choices selected. At the end of the quiz (if you chose more than 1 quiz in the set), you will be asked if you wish to continue. If you choose YES, the next quiz starts automatically. If you chose "Random" at the start of the set, your type of problem may change. Otherwise, you may choose another type of problem before clicking on the "Test" button. If you choose NO then the set ends and the counters are reset.
If you wish to end a quiz early, click on the "End Quiz" button. Answers for that quiz will not be included in the totals.
You can see what Problem and Quiz number you are currently at by the counters on top.
To answer the problem, enter your guess and hit the Enter key to continue. When doing Fractions, this also lets you go from field to field. When doing Fractions, the initial field to enter is the whole number field. If you don't have a whole number in your answer, hit Enter to go to the numerator field. If you enter a number in the wrong field and need to go back to it, simply click in that field to enter another number. Naturally, this doesn't apply if you enter a wrong number in the last field. At that point, you will get a message that you are correct, or one that shows you the correct answer. The program will keep track of all your correct answers and accumulate the score on the score card.
At the end of the set you will be shown the number of questions answered and the choice to go to the scores or not.
***When dealing with Fractions, be aware that the program will reduce all fractions to the simplest terms. This means that if you figure the answer should be 3 4/6, the answer is really 3 2/3. If your answer comes out 14 35/91, the computer's answer will be 14 5/13. There will not be any improper fractions used (where the numerator is larger than the denominator). They will be reduced to mixed fractions.
SCORES
At the end of the set of quizzes, you will have a choice of going to the score card. Actually, you can go to the scores at any time by clicking on the "Scores" button. If you do this during a quiz, however, you will have to click in the answer field when you return to the quiz card to resume the quiz. It's best to wait at least until a quiz is over. On the score card, you can see the scores of each quiz, your number correct, your percentage correct and a grade. To be sure this is accurate, click on the "Compute" button. If no scores have been recorded, the "Compute" button does nothing. Clicking on the "OK" button returns you to the quiz card, and if at the end of a set, it will reset the scores and counters.
At any time, you may click on the "Reset" button which will reset all scores of the current set and zero the Problem and Quiz counters. You will be asked to verify this action first.
ABOUT THE PROGRAM
This program was originally written to help my high school son, Chris. It is sad, but true, that kids today often do not know the basic skills they will need in their day-to-day lives. I created this to help Chris, and it came out so good, I thought it would be useful and appreciated by those who needed it. If you are one of those than please enjoy. If you have any problems or questions, please contact me on GEnie. My address is D.MCGREGOR1, I'll get right back to you.